#!/bin/bash

# 执行 node 脚本
node publish-pre.js
# 获取当前目录下的 package.json 路径
PKG_JSON_PATH="./package.json"

# 备份原始的 package.json 内容
cp $PKG_JSON_PATH ${PKG_JSON_PATH}.bak
# 使用新的 package.json 文件名
mv ${PKG_JSON_PATH}.new $PKG_JSON_PATH
echo "开始发布流程..."


# 执行 npm publish
pnpm publish --no-git-checks --registry=https://registry.npmjs.org/

# 检查发布是否成功
if [ $? -eq 0 ]; then
    echo "发布成功！"
else
    echo "发布失败，正在恢复原始 package.json..."
    mv ${PKG_JSON_PATH}.bak $PKG_JSON_PATH
fi

# 不论发布是否成功，最后总是尝试删除备份文件并恢复原始内容
if [ -f "${PKG_JSON_PATH}.bak" ]; then
    mv ${PKG_JSON_PATH}.bak $PKG_JSON_PATH
    echo "已恢复原始包名"
fi

echo "完成发布流程。"
